using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;

namespace Cephei
{
    /// <summary>
    /// Notification that a cell has changed
    /// </summary>
    /// <param name="eventType">type of event passed</param>
    /// <param name="sender">the cell that triggered this change</param>
    /// <param name="epoch">the time epoch of the original source change.. used for throttling</param>
    /// <param name="transaction">optionaly the transaction that is completing</param>
    public delegate void CellChange (CellEventType eventType, ICell sender, DateTime epoch, ITransaction transaction);

    /// <summary>
    /// Calllback notification for the completion of all dependant changes in a transaction
    /// </summary>
    /// <param name="transaction">the transaction being completed</param>
    public delegate void TransactionComplete (ITransaction transaction);

}
